(a) Field of the Invention
The present invention relates to a method and apparatus for virtualizing network equipment. More particularly, the present invention relates to a method of supporting network virtualization by virtualizing network equipment for performing high-speed packet processing.
(b) Description of the Related Art
Network virtualization is technology supporting several virtual networks by virtualizing each of elements constituting a network. For network virtualization, network equipment which is an element constituting a network needs to be virtualized.
The virtualization of network equipment is technology supporting several virtual routers by virtualizing an apparatus for processing packets, such as a router, at high speed. A set of virtual routers interconnected may form a virtual network.
A method of virtualizing network equipment may be chiefly divided into hardware-based virtualization technology and software-based router virtualization technology.
An OpenFlow switch-based router is a representative hardware-based virtual router. The OpenFlow switch-based router includes an OpenFlow switch for forwarding packets based on a flow table and a controller for controlling the flow table. The flow table may be changed by the controller, and the traffic of a virtual network is physically separated along a route determined by the flow table, thereby enabling the operation of the virtual network.
The hardware-based virtual router, such as OpenFlow, has an advantage in that there is almost no deterioration of performance as compared with the existing router because it can rapidly process traffic with the help of forwarding-dedicated hardware. However, the hardware-based virtual router has low flexibility because all the functions must be implemented in hardware. Accordingly, from a viewpoint of the functions of the virtual router, a problem arises because it is difficult to support a new network structure required in a future Internet or different protocols for networks, add a new packet header, apply various network policies, and handle various user demands.
On the other hand, the software-based virtual router provides the virtualization of router software through virtualization software in an upper layer of hardware. The virtualization software is software capable of creating and managing a plurality of virtual machines which can be operated as respective independent machines. The software-based virtual router is advantageous in that several functional requirements which were difficult to support in a hardware-based virtual router can be easily supported through programming, but has limited packet processing performance owing to the overhead of virtualization software and virtual machines. Furthermore, currently supported virtualization software has limits to the dynamic allocation of physical resources to each virtual network and to control of the physical resources because it insufficiently supports a monitoring function for the physical resources and the dynamic control and allocation of the physical resources.
Meanwhile, there is an apparatus of a form in which the advantages of the hardware-based router and the soft-based router, such as an NP (Network Processor), such as Octeon, are properly mixed.
The NP, such as Octeon, can drive a program at high speed by operating a router program on a CPU without an O/S and also process a large amount of packets at high speed by supporting parallel processing using a plurality of cores. Furthermore, Octeon II provides technology capable of virtualizing the Octeon NP through an EM visor.
If the EM visor is used, however, a program desired by a user can be dynamically loaded and executed in a plurality of cores, but it is not easy to operate the user program in a different kind of an NP because the user program does not support independence between platforms in a binary level. Furthermore, there is a disadvantage in that error or an abnormal operation of one program may affect other programs because the programs cannot be fully separated from each other.